/*
 * Copyright @ 苏州瑞云信息技术有限公司 All rights reserved.
 */
package cn.com.recloud.bbs.dao;

import cn.com.recloud.bbs.dto.CampaignAnalysisDTO;
import cn.com.recloud.bbs.entity.bbs_campaign;
import cn.com.recloud.bbs.vo.CampaignAnalysisVO;
import cn.com.recloud.bbs.vo.CampaignAppVO;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author kim dong
 * @date 2020-06-08
 */
public interface CampaignDao extends BaseMapper<bbs_campaign> {

    /**
     * 活动统计列表
     * @param analysisDTO
     * @return
     */
    List<CampaignAnalysisVO> listCampaignAnalysis(CampaignAnalysisDTO analysisDTO);

    /**
     * 活动统计导出
     * @param analysisDTO
     * @return
     */
    List<CampaignAnalysisVO> exportCampaignAnalysis(CampaignAnalysisDTO analysisDTO);

    /**
     * 活动分页统计
     * @param analysisDTO
     * @return
     */
    List<CampaignAnalysisVO> listPageCampaignAnalysis(CampaignAnalysisDTO analysisDTO);

    /**
     * 分页条数统计
     * @param analysisDTO
     * @return
     */
    int listCountCampaignAnalysis(CampaignAnalysisDTO analysisDTO);

    List<CampaignAppVO> selectAppCampaignPage(@Param("page") IPage<CampaignAppVO> page,
                                              @Param("name") String name);

    void updateStById(bbs_campaign campaign);

    void deleteStartPage(@Param("bbs_campaignid") String bbs_campaignid);
}
